#!/bin/sh

# This file is part of the aMule project.
#
# Copyright (c) 2003-2011 aMule Team ( admin@amule.org / http://www.amule.org )
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301, USA
#

#
# This program generates a unique identifier for EC version checking
#
# Invocation: gen_ECVersion <top_srcdir>
#
# Used by the makefile to generate src/ECVersion.h

top_srcdir=$1

echo -n "Generating ECVersion.h... "

final_hash="`cat $top_srcdir/src/libs/ec/cpp/ECCodes.h | ./mkFileSum`"

cat > ECVersion.h.new <<EOT
/* Automatically generated file. Do not edit! */

#ifndef ECVERSION_H
#define ECVERSION_H

#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#ifdef SVNDATE
#define EC_VERSION_ID "$final_hash"
#endif

#endif /* ECVERSION_H */
EOT

if test -f ECVersion.h; then
	if diff ECVersion.h ECVersion.h.new >/dev/null 2>&1; then
		rm -f ECVersion.h.new
		echo "unchanged."
	else
		mv ECVersion.h.new ECVersion.h
		echo "updated."
	fi
else
	mv ECVersion.h.new ECVersion.h
	echo "created."
fi
